home *** CD-ROM | disk | FTP | other *** search
/ NeXT Education Software Sampler 1992 Fall / NeXT Education Software Sampler 1992 Fall.iso / Programming / Source / HippoDraw / HippoDrawSrc1.1 / Hippo.subproj / InspectAxes.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-04-25  |  2.5 KB  |  97 lines

  1. /* InspectAxes.h        by Paul Kunz    December 1991
  2.  * Controls the axes of the plots
  3.  *
  4.  * Copyright (C)  1991  The Board of Trustees of
  5.  * The Leland Stanford Junior University.  All Rights Reserved.
  6.  */
  7.  
  8. #define INSPECTAXES_H_ID "$Id: InspectAxes.h,v 1.4 1992/03/09 01:45:12 pfkeb Rel $"
  9.  
  10. #import "InspectBase.h"
  11.  
  12. #import "hippo.h"
  13.  
  14. @interface InspectAxes:InspectBase
  15. {    
  16.     id    rbXForm;    /* Form for X-axis rebinning and display */
  17.     id    rbYForm;    /* Form for Y-axis rebinning and display */
  18.     id    rbXSlider0;    /* Slider for X-axis */ 
  19.     id    rbXSlider1;    /* Slider for X-axis */ 
  20.     id    rbXSlider2;    /* Slider for X-axis */ 
  21.     id    rbXSlider3;    /* Slider for X-axis */
  22.     id    rbXSlider[4];    /* Slider matrix */
  23.     id    rbYSlider0;    /* Slider for Y-axis */ 
  24.     id    rbYSlider1;    /* Slider for Y-axis */ 
  25.     id    rbYSlider2;    /* Slider for Y-axis */ 
  26.     id    rbYSlider3;    /* Slider for Y-axis */
  27.     id    rbYSlider[4];    /* Slider matrix */
  28.     
  29.     int currentDim;    /* dimension of current plot */
  30.     
  31.     id  autoScaleXbutton;
  32.     id  autoScaleYbutton;
  33.     id  logScaleXbutton;
  34.     id  logScaleYbutton;
  35.     id  zpXbutton;        /* Zoom/Pan mode switch for x-axis */
  36.     id  zpYbutton;        /* Zoom/Pan mode switch for y-axis */
  37.     id  limitCheckButton;
  38.     
  39.     int   nx, ny;        /* number of bins before rebinning */
  40.     float xl, xh, xw, xoff;    /* the low/high edges, width and offset
  41.                      * before rebinning */
  42.     float yl, yh, yw, yoff;    /* ditto for y */
  43.     graphtype_t         graphtype;
  44.     BOOL numLimitCheck;        /* status of num of bins checking */
  45.     char textFloat[15];
  46. }
  47.  
  48. - initInspFor:aDraw;
  49.  /*
  50.   * Initializes inspector object and adds itself to the Inspector
  51.   * panel
  52.   */
  53.  
  54. - setOptions;
  55.  /*
  56.   * sets the autoscale and log scale options to selected Plot
  57.   */
  58.  
  59. - limitCheckType:sender;
  60.   /* Responds to num limit check button by setting state of
  61.    * number of bins limit flag
  62.    */
  63.    
  64. - (int) limitCheck:(int) nbins against:(int) maxbins;
  65.    /* Returns nbins if numLimitCheck flag is off or
  66.     * if the flag is and nbins is less than maxbins.
  67.     * If flag is on and nbins is greater than maxbins, 
  68.     * then runs an alert panel which may change state
  69.     * of numLimitCheck flag.
  70.     */
  71.  
  72. - rebin:sender;
  73.  /* Resonds to movement of any Slider in Panel.
  74.   */
  75.   
  76. - rebinForm:sender;
  77.   /* Responds to any possible change in the forms.
  78.    */
  79.  
  80. - setSliders;
  81.  /*
  82.   * sets the sliders to current selected plot
  83.   */
  84.  
  85. - rebinAutoYRange;
  86.  /* Sets the range of y sliders and forms from selected plot
  87.   */
  88.  
  89. - tupleSetScaleType:sender;
  90.  
  91. - updateView;
  92.  /*
  93.   * Updates the Inspector's content View
  94.   */
  95.   
  96. @end
  97.